home *** CD-ROM | disk | FTP | other *** search
/ CICA 1993 April / CICA MS Windows - April 1993.iso / unzipped / programr / listings / ptv2n5 / extmem.pas < prev    next >
Pascal/Delphi Source File  |  1991-09-16  |  727b  |  35 lines

  1. program ExtMem;
  2.   {-Display the amount of extended memory in kilobytes}
  3. uses Dos;
  4.  
  5.   function GetListOfLists : Pointer;
  6.     {-Get pointer to the DOS List of Lists}
  7.   var
  8.     Regs : Registers;
  9.   begin
  10.     with Regs do begin
  11.       AH := $52;
  12.       MsDos(Regs);
  13.       GetListOfLists := Ptr(ES, BX);
  14.     end;
  15.   end;
  16.  
  17.  
  18.   function ExtMemInK : Word;
  19.     {-Return the amount of extended memory}
  20.   var
  21.     P : Pointer;
  22.   begin
  23.     P := GetListOfLists;
  24.     Inc(Word(P), $45);    {extended mem in K at offset 45h}
  25.     ExtMemInK := Word(P^);
  26.   end;
  27.  
  28. begin
  29.   if Swap(DosVersion) < $0400 then begin
  30.     WriteLn('Requires DOS 4 or greater');
  31.     Halt;
  32.   end;
  33.   WriteLn(ExtMemInK, 'K extended memory');
  34. end.
  35.